package com.erp.service;

import com.erp.bean.ReportForms;
import com.erp.vo.ReportFormsViewObject;

import java.util.List;

public interface ReportFormService {

    /**
     * 添加报表数据:订单完成后调用
     * @param form   报表对象
     * @return       操作结果
     */
    public boolean add(ReportForms form);

    /**
     * 根据id查询信息
     * @param  fid 报表编号
     * @return 实体类对象
     */
    public ReportFormsViewObject findById(int fid);

    /**
     * 查询全部
     * @return 全部数据集合
     */
    public List<ReportFormsViewObject> findAll();

    /**
     * 分页查询全部数据
     * @param currentPage 当前页
     * @param pageSize	  每页显示数据
     * @return 结果集合
     */
    public List<ReportFormsViewObject> findAllSpilt(Integer currentPage,Integer pageSize);

    /**
     * 模糊分页查询全部数据
     * @param currentPage 当前页
     * @param pageSize	  每页显示数据
     * @param column	  模糊查询列
     * @param keyWord	  模糊查询关键字
     * @return 结果集合
     */
    public List<ReportFormsViewObject> findAllSpilt(Integer currentPage,Integer pageSize,String column,String keyWord);

    /**
     * 进行数据表总数据量统计
     * @return count(*)函数的返回结果
     */
    public Long getAllCount();

    /**
     * 进行数据表的模糊查询数据量统计
     * @param colunm      指定模糊查询的数据列
     * @param keyWord     模糊查询关键字
     * @return count(colunm)函数的返回结果
     */
    public Long getAllCount(String colunm,String keyWord);
}
